extends Node

# 管理玩家状态、游戏进度和全局事件的脚本

# 玩家状态引用
var player_stats = null
var current_player = null

# 信号
signal game_paused(is_paused)
signal game_loaded
signal game_saved

func _ready():
	print("GameManager 初始化")

# 获取或创建玩家状态
func get_player_stats():
	if player_stats == null:
		# 如果没有玩家状态，可以创建一个默认状态
		# 在实际游戏中，这里应该从保存的游戏中加载或创建新的玩家状态
		player_stats = load("res://scripts/player/player_stats.gd").new()
		print("创建新的玩家状态")
	
	return player_stats

# 设置当前玩家引用
func set_current_player(player):
	current_player = player
	print("设置当前玩家:", player)

# 获取当前玩家引用
func get_current_player():
	return current_player

# 暂停/恢复游戏
func toggle_pause():
	var new_pause_state = !get_tree().paused
	get_tree().paused = new_pause_state
	emit_signal("game_paused", new_pause_state)
	print("游戏暂停状态:", new_pause_state)

# 保存游戏（示例函数）
func save_game():
	print("保存游戏...")
	# 实现保存逻辑
	emit_signal("game_saved")

# 加载游戏（示例函数）
func load_game():
	print("加载游戏...")
	# 实现加载逻辑
	emit_signal("game_loaded") 